package com.example.spring_es.model;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.Getter;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class VideoBatchTaskSearchParam {
    private Long orgId;
    private LocalDateTime startCreateTime;
    private LocalDateTime endCreateTime;

    private LocalDateTime startUpdateTime;
    private LocalDateTime endUpdateTime;

    private LocalDateTime startBatchTime;
    private LocalDateTime endBatchTime;

    /**
     * 任务备注匹配模式: 1.精确匹配；2.模糊匹配
     */
    private Integer taskRemarkMatchingMode = 2;
    /**
     * 任务备注
     */
    private String taskRemark;


    private Integer pageNo = 1;

    private Integer pageSize = 20;

    private Sort sort;

    @Getter
    public enum Sort {
        CREATE_TIME("createTime"),
        UPDATE_TIME("updateTime")
        ;
        private final String fieldName;

        Sort(String fieldName) {
            this.fieldName = fieldName;
        }
    }
}
